package co.gov.medellin.sdep.sisdep.model.dao.impl;

import org.springframework.transaction.PlatformTransactionManager;
//import org.springframework.transaction.TransactionDefinition;
//import org.springframework.transaction.TransactionStatus;
//import org.springframework.transaction.support.DefaultTransactionDefinition;

//import co.gov.medellin.sdep.sisdep.model.EstSocioEconomico;
import co.gov.medellin.sdep.sisdep.model.comp.EstSocioEconomicoComp;
import co.gov.medellin.sdep.sisdep.model.dao.EstSocioEconomicoDAOImpl;

//import co.gov.medellin.sdep.sisdep.model.EstSocioEconomico;

public class EstSocioEconomicoDAOTImpl extends EstSocioEconomicoDAOImpl implements IEstSocioEconomicoDAOT {

	/** manejador de transacciones para EstSocioEconomicoDAOTImpl */
	private PlatformTransactionManager transactionManager;
	/**
	 * constructor por defecto
	 */
	public EstSocioEconomicoDAOTImpl() {
	}

	/**
	 * metodo ejemplo manejo de transacciones
	 */
	//public int updateRecordWithLog(EstSocioEconomico estSocioEconomico) {
	//	TransactionDefinition td = new DefaultTransactionDefinition();
	//	TransactionStatus status = getTransactionManager().getTransaction(td);
	//	try{
	//		llamado a metodos basicos en el DAO Base
	//		EstSocioEconomicoDAOImpl
	//		transactionManager.commit(status);
	//		
	//	}catch (Exception e){
	//		transactionManager.rollback(status);
	//		throw new RuntimeException(e);
	//	}
	//	return 0;
	//}

	/**
	 * retorna el transactionManager
	 * @return
	 */
	public PlatformTransactionManager getTransactionManager() {
		return transactionManager;
	}

	/**
	 * establece el transaction manager establecido en la configuracion
	 * @param transactionManager
	 */
	public void setTransactionManager(PlatformTransactionManager transactionManager) {
		this.transactionManager = transactionManager;
	}

	public int updateEstudioSocioEconomicoDetalle(
			EstSocioEconomicoComp estSocioEconomicoComp) {

		/**
		 * Verificamos la existencia de cada detalle del estudio socio economico
		 * si no existe registro asociado a la solicitud entonces se crea cada
		 * registro detalle, es decir:
		 * 
		 * Registro en:
		 * Registro en:
		 * Registro en:
		 * Registro en:
		 * Registro en:
		 * Registro en:
		 * Registro en:      
		 * Registro en:
		 */
		
		//	TransactionDefinition td = new DefaultTransactionDefinition();
		//	TransactionStatus status = getTransactionManager().getTransaction(td);
		//	try{
		//		llamado a metodos basicos en el DAO Base
		//		EstSocioEconomicoDAOImpl
		//		transactionManager.commit(status);
		//		
		//	}catch (Exception e){
		//		transactionManager.rollback(status);
		//		throw new RuntimeException(e);
		//	}
		//	return 0;
		
		
		return 0;
	}

}
